package net.form.processing;


public abstract class AbstractImageCommand implements ImageComand {
	/**
	 * Imagen a procesar
	 */
	protected Image image;
	
//	private Clasificador clasificador;
	
	/**
	 * Ancho de la imagen
	 */
	protected int width;

	/**
	 * Alto de la imagen
	 */
	protected int height;
	
	/**
	 * Constructor
	 * @param image Imagen a procesar
	 */
	public AbstractImageCommand(Image image) {
		super();
		if (image != null) {
			this.width = image.getWidth();
			this.height = image.getHeight();
			setImage(image);
		}
	}

	/*
	 * (non-Javadoc)
	 * @see procesamiento.ImageComand#undo()
	 */
	public Image undo() {
		return getImage();
	}

	public Image getImage() {
		return image;
	}

	public void setImage(Image image) {
		if (image != null) {
			this.width = image.getWidth();
			this.height = image.getHeight();
			this.image = image;
		}
	}

//	public Clasificador getClasificador() {
//		return clasificador;
//	}
//
//	public void setClasificador(Clasificador clasificador) {
//		this.clasificador = clasificador;
//	}
	
	public void postExecute() {
		//this.image = null;		
	}

	/*
	 * (non-Javadoc)
	 * @see procesamiento.ImageComand#getInfo()
	 */
	public String getInfo() {
		return "";
	}
}
